#ifndef MAINWIDGET_H
#define MAINWIDGET_H

#include "logowidget.h"
#include "devicewidget.h"
#include "scenewidget.h"
#include "iowidget.h"
#include "dmcomm.h"

class MainWidget : public AWidget
{
    Q_OBJECT
public:
    explicit MainWidget(QWidget *parent = nullptr);
    ~MainWidget();
public slots:
    void createVirtualDevice();
    void setLogo();
private slots:
    void initialized();
    void currentChanged(const int &index);
    void inputNameUpdated();
    void outputNameUpdated();
    void disconnected(const DevInfo &info);
private:
    LogoWidget *logoWidget;
    DeviceWidget *devWidget;
    SceneWidget *sceneWidget;
    ATabWidget *tabWidget;
    DevInfo m_info;
    QVector<IOWidget *> inputs;
    QVector<IOWidget *> outputs;
};

#endif // MAINWIDGET_H
